package com.tianjin.design设计原则;

public class Test {

	/**
	 *  1、使用设计模式重构的主要目的是为了提高复用性，提高可维护性，我们的目标：一切为了复用！！！
	 *  2、使用设计模式还需与实际情况相结合，会使其更合理，理解起来更容易
	 */


	/**
	 *
	 * 1、组合/聚合复用原则，组合是完全的部分与整体的关系，部分属于此整体；而聚合是整体包含部分，但是部分并不属于此整体，优先使用组合聚合而非继承；
	 * 2、开放-封闭原则，对扩展开放，对修改封闭；
	 * 3、敏捷开发原则告诉我们，不要为代码添加基于猜测的，实际不需要的功能，所以设计模式也不能乱用，可以在需要的时候通过重构实现；
	 * 4、单一职责原则，一个类、一个方法最好只做专一的事情
	 * 5、迪米特原则（最少知道原则），类之间关联的越少越好，降低耦合度
	 */

	/**
	 * 继承是一个强耦合行为，父类改变，子类肯定需要改变，所以一般在is-a的情况下采取使用继承
	 *	接口是用来定义规则、规范，你们要以我的规则来行动，一般是主动定义接口
	 *	抽象是为了提取复用，一般被动抽取上层抽象类
	 *
	 */
}
